home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1994 February: Tool Chest / Dev.CD Feb 94.toast / Tool Chest / Development Platforms / MPW Related / MPW Interfaces / CIncludes / Devices.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-09-17  |  4.0 KB  |  153 lines  |  [TEXT/MPS ]

  1. /*
  2.     File:        Devices.h
  3.  
  4.     Copyright:    © 1983-1993 by Apple Computer, Inc.
  5.                 All rights reserved.
  6.  
  7.     Version:    System 7.1 for ETO #11
  8.     Created:    Tuesday, March 30, 1993 18:00
  9.  
  10. */
  11.  
  12. #ifndef __DEVICES__
  13. #define __DEVICES__
  14.  
  15. #ifndef __OSUTILS__
  16. #include <OSUtils.h>
  17. #endif
  18.  
  19. #ifndef __FILES__
  20. #include <Files.h>
  21. #endif
  22.  
  23. #ifndef __QUICKDRAW__
  24. #include <Quickdraw.h>
  25. #endif
  26.  
  27.  
  28. enum {
  29.  
  30.     newSelMsg = 12,
  31.     fillListMsg = 13,
  32.     getSelMsg = 14,
  33.     selectMsg = 15,
  34.     deselectMsg = 16,
  35.     terminateMsg = 17,
  36.     buttonMsg = 19,
  37.     chooserID = 1,
  38.     initDev = 0,        /*Time for cdev to initialize itself*/
  39.     hitDev = 1,         /*Hit on one of my items*/
  40.     closeDev = 2,       /*Close yourself*/
  41.     nulDev = 3,         /*Null event*/
  42.     updateDev = 4,      /*Update event*/
  43.     activDev = 5,       /*Activate event*/
  44.     deactivDev = 6,     /*Deactivate event*/
  45.     keyEvtDev = 7,      /*Key down/auto key*/
  46.     macDev = 8,         /*Decide whether or not to show up*/
  47.     undoDev = 9,
  48.     cutDev = 10,
  49.     copyDev = 11
  50. };
  51. enum {
  52.     pasteDev = 12,
  53.     clearDev = 13,
  54.     cursorDev = 14,
  55.     cdevGenErr = -1,    /*General error; gray cdev w/o alert*/
  56.     cdevMemErr = 0,     /*Memory shortfall; alert user please*/
  57.     cdevResErr = 1,     /*Couldn't get a needed resource; alert*/
  58.     cdevUnset = 3,      /* cdevValue is initialized to this*/
  59.  
  60. /* Monitors control panel messages */
  61.     initMsg = 1,        /*initialization*/
  62.     okMsg = 2,          /*user clicked OK button*/
  63.     cancelMsg = 3,      /*user clicked Cancel button*/
  64.     hitMsg = 4,         /*user clicked control in Options dialog*/
  65.     nulMsg = 5,         /*periodic event*/
  66.     updateMsg = 6,      /*update event*/
  67.     activateMsg = 7,    /*not used*/
  68.     deactivateMsg = 8,  /*not used*/
  69.     keyEvtMsg = 9,      /*keyboard event*/
  70.     superMsg = 10,      /*show superuser controls*/
  71.     normalMsg = 11,     /*show only normal controls*/
  72.     startupMsg = 12     /*code has been loaded*/
  73. };
  74.  
  75. struct DCtlEntry {
  76.     Ptr dCtlDriver;
  77.     short dCtlFlags;
  78.     QHdr dCtlQHdr;
  79.     long dCtlPosition;
  80.     Handle dCtlStorage;
  81.     short dCtlRefNum;
  82.     long dCtlCurTicks;
  83.     WindowPtr dCtlWindow;
  84.     short dCtlDelay;
  85.     short dCtlEMask;
  86.     short dCtlMenu;
  87. };
  88.  
  89. typedef struct DCtlEntry DCtlEntry;
  90. typedef DCtlEntry *DCtlPtr, **DCtlHandle;
  91.  
  92. struct AuxDCE {
  93.     Ptr dCtlDriver;
  94.     short dCtlFlags;
  95.     QHdr dCtlQHdr;
  96.     long dCtlPosition;
  97.     Handle dCtlStorage;
  98.     short dCtlRefNum;
  99.     long dCtlCurTicks;
  100.     GrafPtr dCtlWindow;
  101.     short dCtlDelay;
  102.     short dCtlEMask;
  103.     short dCtlMenu;
  104.     char dCtlSlot;
  105.     char dCtlSlotId;
  106.     long dCtlDevBase;
  107.     Ptr dCtlOwner;
  108.     char dCtlExtDev;
  109.     char fillByte;
  110. };
  111.  
  112. typedef struct AuxDCE AuxDCE;
  113. typedef AuxDCE *AuxDCEPtr, **AuxDCEHandle;
  114.  
  115.  
  116. #ifdef __cplusplus
  117. extern "C" {
  118. #endif
  119. pascal DCtlHandle GetDCtlEntry(short refNum); 
  120. pascal Boolean SetChooserAlert(Boolean f); 
  121. pascal OSErr OpenDriver(ConstStr255Param name,short *drvrRefNum); 
  122. OSErr opendriver(char *driverName,short *refNum); 
  123. pascal OSErr CloseDriver(short refNum); 
  124. pascal OSErr Control(short refNum,short csCode,const void *csParamPtr); 
  125. pascal OSErr Status(short refNum,short csCode,void *csParamPtr); 
  126. pascal OSErr KillIO(short refNum); 
  127. pascal OSErr PBControl(ParmBlkPtr paramBlock,Boolean async); 
  128. #pragma parameter __D0 PBControlSync(__A0)
  129. pascal OSErr PBControlSync(ParmBlkPtr paramBlock)
  130.     = 0xA004; 
  131. #pragma parameter __D0 PBControlAsync(__A0)
  132. pascal OSErr PBControlAsync(ParmBlkPtr paramBlock)
  133.     = 0xA404; 
  134. pascal OSErr PBStatus(ParmBlkPtr paramBlock,Boolean async); 
  135. #pragma parameter __D0 PBStatusSync(__A0)
  136. pascal OSErr PBStatusSync(ParmBlkPtr paramBlock)
  137.     = 0xA005; 
  138. #pragma parameter __D0 PBStatusAsync(__A0)
  139. pascal OSErr PBStatusAsync(ParmBlkPtr paramBlock)
  140.     = 0xA405; 
  141. pascal OSErr PBKillIO(ParmBlkPtr paramBlock,Boolean async); 
  142. #pragma parameter __D0 PBKillIOSync(__A0)
  143. pascal OSErr PBKillIOSync(ParmBlkPtr paramBlock)
  144.     = 0xA006; 
  145. #pragma parameter __D0 PBKillIOAsync(__A0)
  146. pascal OSErr PBKillIOAsync(ParmBlkPtr paramBlock)
  147.     = 0xA406; 
  148. #ifdef __cplusplus
  149. }
  150. #endif
  151.  
  152. #endif
  153.